package com.woniuxy.service;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.woniuxy.dto.commonDto.BaseDto;
import com.woniuxy.dto.RoleDto;
import com.woniuxy.dto.UserRelatedDto.UsersSelRolesDto;
import com.woniuxy.entity.RoleTable;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.param.RolesPageAndByKeyParam;
import com.woniuxy.param.UserRelatedParam.SaveRoleParam;
import com.woniuxy.param.UserRelatedParam.UpdateRoleParam;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author zcx,ftl,gr,rhs
 * @since 2021-12-31
 */
public interface RoleTableService extends IService<RoleTable> {

    BaseDto<RoleTable> listRoles(RolesPageAndByKeyParam rp);

    UsersSelRolesDto listRolesByUserId(Integer userId);

    boolean removeUserByIds(List<Integer> ids);

    boolean SaveRole(SaveRoleParam srp);

    RoleDto findRoleById(Integer roleId) throws JsonProcessingException;

    boolean updateRole(UpdateRoleParam urp);
}
